//Map是javascript是一组键值对的结构，具有极快的查找速度。

var map= new Map([['黄文聪',90,29],['江新传',100],['黄叶帅',90],['江洋',0],[90,4]]);

console.log(map);

//总结：Map有长度，有索引,但是不能根据索引取某个索引的键和值
console.log(map[0]);

//Map()的方法有以下几种：
console.log(map.get('黄文聪'));//实例对象.get()——根据键名来获取值
console.log(map.has('黄文聪'));//检索Map（）的实例中是否有该键——根据键名来检索
console.log(map.get(90));
map.set('李庆才',90);//向Map()集合中添加 一对 键值对(不能同时添加 多对键值对)
map.set("陈帅辉",30)
console.log(map);
console.log(map.delete('黄文聪'))//删除某个键，删除键名也会删除值。
console.log(map.has("黄文聪"));
console.log(map.set('黄文聪',40));


//  Set
// Set和Map类似，也是一组key的集合，但不存储value。由于key不能重复，所以，在Set中，没有重复的key。

// 要创建一个Set，需要提供一个Array作为输入，或者直接创建一个空Set：
var arr =["小鸭子","小猪","小熊","小企鹅","大猫"];
var s =new Set(arr);
console.log(s);

//delete(" ")检查是否有该键。有则删除键并返回true，没有则返回false
s.delete("大猫");
console.log(s);

//has(" ")检查是否有该键，有则返回true，没有则返回false
console.log(s.has("小鸭子"));//返回true
console.log(s.has("小狗"));//返回false

//add(" ")是向Set()中添加指定的键
s.add("拉布拉多");
console.log(s);

//clear()是用来清空Set()里的键
s.clear();
console.log(s);

//entries 弄不懂啥用处

//forEach咱就是说弄不懂怎么用
/* 
s=new Set(arr);
console.log(s);
console.log(s.forEach);
*/
















